www.gusucode.com > VC++ 同学录信息管理系统源代码-源码程序 > VC++ 同学录信息管理系统源代码-源码程序/code/LoginDlg.cpp

    //Download by http://www.NewXing.com
// LoginDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Mates.h"
#include "LoginDlg.h"
#include "UserRecordset.h"
#include "MyRecordSet.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CLoginDlg dialog


CLoginDlg::CLoginDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CLoginDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CLoginDlg)
	m_strPassword = _T("");
	m_strUserName = _T("");
	m_strDBType = _T("");
	//}}AFX_DATA_INIT
}


void CLoginDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CLoginDlg)
	DDX_Text(pDX, IDC_EDIT_PASSWORD, m_strPassword);
	DDX_Text(pDX, IDC_EDIT_USERNAME, m_strUserName);
	DDX_CBString(pDX, IDC_COMBO_TYPE, m_strDBType);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CLoginDlg, CDialog)
	//{{AFX_MSG_MAP(CLoginDlg)
	ON_BN_CLICKED(ID_LOGIN, OnLogin)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CLoginDlg message handlers


void CLoginDlg::OnLogin() 
{
	// TODO: Add your control notification handler code here
	UpdateData(true);
	if(m_strUserName.IsEmpty()||m_strPassword.IsEmpty()||m_strDBType.IsEmpty())
	{
		AfxMessageBox("请将资料填写完整再登录!");
		return;
	}
	m_pRS.ADOOpen(m_strDBType);
	m_strSQL="SELECT [PassWord] FROM UserTab WHERE [UserName]='"+m_strUserName+"' ";
	m_pRS.ADOExcute(m_strSQL);
	if(m_pRS.nFieldRows==1)
	{
		if(m_pRS.GetFieldString(0)==m_strPassword)
		{
			AfxMessageBox("登陆成功");
			CDialog::OnOK();
		}
		else
		{
			AfxMessageBox("错误的密码!");
		}
	}
	else
	{
		AfxMessageBox("错误的用户名!");
	}
}